.TH std::ranges::elements_view::iterator::operator++,--,+=,-= 3 "2024.06.10" "http://cppreference.com" "C++ Standard Libary"
.SH NAME
std::ranges::elements_view::iterator::operator++,--,+=,-= \- std::ranges::elements_view::iterator::operator++,--,+=,-=

.SH Synopsis
   constexpr /*iterator*/& operator++();                   \fB(1)\fP \fI(since C++20)\fP
   constexpr void operator++( int );                       \fB(2)\fP \fI(since C++20)\fP
   constexpr /*iterator*/ operator++( int )                \fB(3)\fP \fI(since C++20)\fP
     requires ranges::forward_range<Base>;
   constexpr /*iterator*/& operator--()                    \fB(4)\fP \fI(since C++20)\fP
     requires ranges::bidirectional_range<Base>;
   constexpr /*iterator*/ operator--( int )                \fB(5)\fP \fI(since C++20)\fP
     requires ranges::bidirectional_range<Base>;
   constexpr /*iterator*/& operator+=( difference_type n ) \fB(6)\fP \fI(since C++20)\fP
     requires ranges::random_access_range<Base>;
   constexpr /*iterator*/& operator-=( difference_type n ) \fB(7)\fP \fI(since C++20)\fP
     requires ranges::random_access_range<Base>;

   Increments or decrements the iterator.

   Let current_ be the underlying iterator.

   1) Equivalent to ++current_; return *this;
   2) Equivalent to ++current_;
   3) Equivalent to auto tmp = *this; ++*this; return tmp;
   4) Equivalent to --current_; return *this;
   5) Equivalent to auto tmp = *this; --*this; return tmp;
   6) Equivalent to current_ += n; return *this;
   7) Equivalent to current_ -= n; return *this;

.SH Parameters

   n - position relative to current location

.SH Return value

   1,4,6,7) *this
   2) \fI(none)\fP
   3,5) a copy of *this that was made before the change
